Kjartan Maraas [Wed, 24 Aug 2011 16:54:00 +0000 (18:54 +0200)]
Updated Norwegian bokmål translation
Chun-wei Fan [Fri, 19 Aug 2011 07:39:24 +0000 (15:39 +0800)]
Update gtk/Makefile.am
Distribute fallback implementation source file for rint()/round()
Matthias Clasen [Wed, 24 Aug 2011 12:16:03 +0000 (08:16 -0400)]
Use a weak ref in GtkAccelLabel
GtkAccelLabel was holding a strong reference on its parent,
which could, depending on the circumstances, lead to leaks.
https://bugzilla.gnome.org/show_bug.cgi?id=344858
Matthias Clasen [Wed, 24 Aug 2011 11:58:21 +0000 (07:58 -0400)]
Trivial: whitespace fixes
Matthias Clasen [Wed, 24 Aug 2011 11:56:13 +0000 (07:56 -0400)]
Trivial: Silence a compiler warning
Matthias Clasen [Wed, 24 Aug 2011 11:54:58 +0000 (07:54 -0400)]
Trivial: Silence a compiler warning
Matthias Clasen [Wed, 24 Aug 2011 11:46:35 +0000 (07:46 -0400)]
GtkColorButton: Don't forget to close a cairo context
Patch by Jerome Lambourg, bug 655392.
Daniel Nylander [Wed, 24 Aug 2011 07:22:23 +0000 (09:22 +0200)]
Updated Swedish translation
Matthias Clasen [Wed, 24 Aug 2011 04:49:59 +0000 (00:49 -0400)]
GtkFontChooserDialog: Select when a list item is activated
This is the expected behavior.
Matthias Clasen [Wed, 24 Aug 2011 04:49:16 +0000 (00:49 -0400)]
GtkFontChooser: Add a ::font-activated signal
This signal gets emitted when a font in the list is activated.
Matthias Clasen [Wed, 24 Aug 2011 04:32:20 +0000 (00:32 -0400)]
GtkAppChooserDialog: remove an unused variable
Matthias Clasen [Wed, 24 Aug 2011 04:11:32 +0000 (00:11 -0400)]
GtkAppChooserDialog: Simplify the construction
We do the same in other places.
Matthias Clasen [Wed, 24 Aug 2011 04:10:34 +0000 (00:10 -0400)]
GtkAppChooserButton: Make activating rows work as expected
When a row is activated in the 'Other...' dialog, we have
to make sure the dialog goes away.
Matthias Clasen [Wed, 24 Aug 2011 03:29:19 +0000 (23:29 -0400)]
GtkSwitch: Return FALSE from the button press handler
This makes the behavior identical to other widgets which
handle button presses, and it avoids problems when placing
switches into a windows main toolbar.
https://bugzilla.gnome.org/show_bug.cgi?id=656986
Arx Cruz [Thu, 4 Aug 2011 18:34:16 +0000 (15:34 -0300)]
[filechooser] bgo#349502: Context menu option to copy selected files to the clipboard
Piotr Drąg [Tue, 23 Aug 2011 20:28:43 +0000 (22:28 +0200)]
Updated POTFILES.in
Gabor Kelemen [Tue, 23 Aug 2011 20:18:37 +0000 (22:18 +0200)]
Add tests/*ui to POTFILES.skip
Gabor Kelemen [Tue, 23 Aug 2011 20:16:09 +0000 (22:16 +0200)]
There is no need for [type: ...] tags in POTFILES.skip
Daniel Mustieles [Tue, 23 Aug 2011 20:04:04 +0000 (22:04 +0200)]
Fixed POTFILES.in (error in D-L)
Daniel Mustieles [Tue, 23 Aug 2011 19:56:15 +0000 (21:56 +0200)]
Fixed POTFILES.in (error in D-L)
Daniel Mustieles [Tue, 23 Aug 2011 19:55:04 +0000 (21:55 +0200)]
Fixed POTFILES.in (error in D-L)
Daniel Mustieles [Tue, 23 Aug 2011 19:52:16 +0000 (21:52 +0200)]
Fixed bug #657146
Piotr Drąg [Tue, 23 Aug 2011 17:54:06 +0000 (19:54 +0200)]
Updated POTFILES.in
Мирослав Николић [Tue, 23 Aug 2011 17:15:48 +0000 (19:15 +0200)]
Updated Serbian translation
Matthias Clasen [Tue, 23 Aug 2011 14:16:34 +0000 (10:16 -0400)]
Change 'Ok' to 'Select' in the color chooser dialog
We have meaningful labels for the Ok buttons in all other choosers,
so just use the same string we use in the app chooser and the
font chooser.
Also move the mnemonic from s to a in 'Saturation', to avoid a
mnemonic conflict. String change !
https://bugzilla.gnome.org/show_bug.cgi?id=657006
Matthias Clasen [Tue, 23 Aug 2011 14:08:33 +0000 (10:08 -0400)]
Add a mnemonic to the 'Select' button
This makes the string the same as in the app chooser dialog.
Sweta Kothari [Tue, 23 Aug 2011 09:16:57 +0000 (14:46 +0530)]
Updated Gujarati Translations
Andika Triwidada [Mon, 22 Aug 2011 22:32:59 +0000 (05:32 +0700)]
Updated Indonesian translation
Daniel Nicoara [Mon, 22 Aug 2011 20:31:27 +0000 (16:31 -0400)]
wayland: Acquire cairo device during operations that need the GL context
Kristian Høgsberg [Mon, 22 Aug 2011 18:54:12 +0000 (14:54 -0400)]
wayland: We need to require egl as well
Kristian Rietveld [Mon, 22 Aug 2011 19:26:44 +0000 (21:26 +0200)]
Fix typo in doc comment
Kristian Rietveld [Sat, 20 Aug 2011 19:51:49 +0000 (21:51 +0200)]
Add forgotten calls to signal_monitor_assert_is_empty()
Kristian Rietveld [Sat, 20 Aug 2011 19:51:14 +0000 (21:51 +0200)]
Fix some memory leaks in treemodel unit tests
Kristian Rietveld [Sat, 20 Aug 2011 09:16:29 +0000 (11:16 +0200)]
treemodelsort: eliminate unread variable assigments
Courtesy of scan-build/clang.
Kristian Rietveld [Sat, 20 Aug 2011 09:13:54 +0000 (11:13 +0200)]
treemodelfilter: eliminate unread variable assigments
Courtesy of scan-build/clang.
Kristian Rietveld [Sat, 20 Aug 2011 08:59:36 +0000 (10:59 +0200)]
Add some notes on how filter model testing can be made (even) more thorough
Kristian Rietveld [Sat, 20 Aug 2011 08:55:27 +0000 (10:55 +0200)]
Update filtermodel ref count unit tests to new cache depth
Kristian Rietveld [Sat, 20 Aug 2011 08:54:49 +0000 (10:54 +0200)]
Fix bad typo in gtk_tree_model_filter_build_level() ...
Kristian Rietveld [Sat, 20 Aug 2011 08:54:00 +0000 (10:54 +0200)]
gtktreemodelfilter: only maintain cache at 1 level depth instead of 2
Kristian Rietveld [Sat, 20 Aug 2011 07:36:35 +0000 (09:36 +0200)]
Extend public and internal documentation about GtkTreeModelFilter
Kristian Rietveld [Thu, 11 Aug 2011 10:23:52 +0000 (12:23 +0200)]
Extend documentation about GtkTreeModelSort internals
Kristian Rietveld [Thu, 11 Aug 2011 08:42:29 +0000 (10:42 +0200)]
GtkTreeModel: add more detailed documentation on reference counting
Kristian Rietveld [Wed, 10 Aug 2011 21:24:58 +0000 (23:24 +0200)]
Replace GArray with GSequence in GtkTreeModelSort
This is done in the same way as GArray was replaced with GSequence in
GtkTreeModelFilter, in a patch done by Xavier Claessens.
All sorting code has been reworked to use the GSequence sorting
and insert sort functions, instead of doing a lot on our own.
Kristian Rietveld [Wed, 10 Aug 2011 21:12:08 +0000 (23:12 +0200)]
Add more unit tests for GtkTreeModelSort
To test ref counting during rows-reordered and the new_order arrays supplied
with rows-reordered signals.
Kristian Rietveld [Wed, 10 Aug 2011 20:51:48 +0000 (22:51 +0200)]
Move SignalMonitor to treemodel.[ch] so it can be used by other tests
Kristian Rietveld [Sun, 7 Aug 2011 15:58:37 +0000 (17:58 +0200)]
Revert usage of parent_elt_index back to parent_elt pointers
Based on earlier patch for GtkTreeModelFilter by Xavier Claessens.
Xavier Claessens [Sun, 7 Aug 2011 15:11:13 +0000 (17:11 +0200)]
Replace GArray with GSequence in GtkTreeModelFilter
Significantly improves performance when e.g. removing (filtering) a lot
of rows from the filter model. Fixes bug 616871.
This commit includes changes by Kristian Rietveld to make the patch apply
on top of the treemodel-fix branch and pass all newly written unit tests.
Xavier Claessens [Fri, 5 Aug 2011 15:40:04 +0000 (17:40 +0200)]
Revert usage of parent_elt_index back to parent_elt pointers
This was introduced in commit
a59c39f3703e81f560aa946c25145413192d795b.
The revert is part of bug 616871. Adaption to recent GtkTreeModelFilter
changes by Kristian Rietveld.
Kristian Rietveld [Sun, 24 Jul 2011 16:52:59 +0000 (18:52 +0200)]
Do not emit rows-reordered for levels with no visible rows
Kristian Rietveld [Sun, 24 Jul 2011 16:49:27 +0000 (18:49 +0200)]
Remove left-over dump call
Kristian Rietveld [Sun, 24 Jul 2011 16:46:46 +0000 (18:46 +0200)]
Correct ref transfer in GtkTreeModelFilter rows-reordered handling
Kristian Rietveld [Sun, 24 Jul 2011 16:44:25 +0000 (18:44 +0200)]
Test GtkTreeModelFilter's reference transfers
Kristian Rietveld [Sun, 24 Jul 2011 16:43:10 +0000 (18:43 +0200)]
Unit test GtkTreeModelFilter's rows-reordered emissions
Kristian Rietveld [Mon, 18 Jul 2011 08:03:03 +0000 (10:03 +0200)]
Unit test rows reordered ref count handling in GtkTreeView
Kristian Rietveld [Mon, 18 Jul 2011 07:41:34 +0000 (09:41 +0200)]
Should validate TreeModelRefCount before the sort and filter model
Kristian Rietveld [Sun, 10 Jul 2011 19:56:43 +0000 (21:56 +0200)]
Add reference counting unit tests for GtkTreeModelFilter
Kristian Rietveld [Sun, 10 Jul 2011 19:53:25 +0000 (21:53 +0200)]
Add more "has child" unit tests
This allows for more thorough testing of "has child" filter functions.
We also test a has child filter function with a sort model as
child model, to verify that we receive enough signals to function
properly.
Kristian Rietveld [Sun, 10 Jul 2011 19:48:23 +0000 (21:48 +0200)]
Add cleaned up and easier version of unit test for bug 311955
Kristian Rietveld [Sun, 10 Jul 2011 19:46:02 +0000 (21:46 +0200)]
Check level length in unit test for bug 311955
Kristian Rietveld [Sun, 10 Jul 2011 19:44:06 +0000 (21:44 +0200)]
Remove checks for superfluous signals which are not longer emitted
Kristian Rietveld [Sun, 10 Jul 2011 19:34:38 +0000 (21:34 +0200)]
Correct/expand base tests to check emitted signals
The filter model is now more strict about the signals which are emitted,
so the base tests have been expanded to test with both the root level
nodes collapsed and expanded.
Kristian Rietveld [Sun, 10 Jul 2011 15:37:05 +0000 (17:37 +0200)]
treemodelrefcount: check_iter(): check if iter is valid
Kristian Rietveld [Sun, 10 Jul 2011 15:35:49 +0000 (17:35 +0200)]
treemodelrefcount: make it possible to assert within check functions
Kristian Rietveld [Sun, 10 Jul 2011 14:35:38 +0000 (16:35 +0200)]
treemodelfilter: rework reference counting
- Before we kept a reference on all nodes in non-root levels. This has
been changed, now we keep a reference on the first node of each level.
If, due to changes in the model, another node becomes the first node in
the level, the reference is transferred to this new first node.
- All non-root levels keep a reference on their parent.
- By making use of the external ref count, the filter model now emits less
unnecessary signals.
- GtkTreeModelFilter does support filter functions which decide visibility
of a given node based on the number of or visibility of children.
To accomplish this, a child level of a node is cached when its
parent has an external ref count > 0, because changes to the node might
affect this parent.
- An optimization for not building the root level in case the inserted
node is not visible in gtk_tree_model_filter_row_inserted() has been
removed. In this case, we still need to build the root level and
possibly a child level to monitor for signals which might make
this row visible.
Kristian Rietveld [Sun, 10 Jul 2011 14:24:05 +0000 (16:24 +0200)]
treemodelfilter: handle another case in check_ancestors
In gtk_tree_model_filter_check_ancestors(), also handle the case when
a node is already in the cache, but invisible, in the root level.
With the upcoming changes to GtkTreeModelFilter's ref counting this
case can occur.
Kristian Rietveld [Sun, 10 Jul 2011 14:21:08 +0000 (16:21 +0200)]
treemodelfilter: guard for building already existing levels
Kristian Rietveld [Sun, 26 Jun 2011 20:04:05 +0000 (22:04 +0200)]
treemodelfilter: Introduce notion of external ref count
We need to distinguish between the ref count objects have on us versus
the ref count we have on our child model. To keep track of the former,
we introduce the "external ref count" in this commit. The zero_ref_count
needs to be determined from the external ref count, because objects that
have a ref count on us have say in which levels must be cached and which
can be released.
Before the caching in GtkTreeModelFilter was essentially broken and
levels were never released. This was caused because the zero_ref_count
was connected to the ref count the filter model had on its child model.
Now that this depends on the external ref count, this is working fine and
as to be expected.
Kristian Rietveld [Sun, 26 Jun 2011 19:44:13 +0000 (21:44 +0200)]
treemodelfilter: Move more missions of row-deleted down
The row-deleted signal should be emitted after the internal data
structures have been updated. In gtk_tree_model_filter_remove_elt_from_level
and gtk_tree_model_filter_virtual_root_deleted the signal was still being
emitted before the updates were carried out.
Kristian Rietveld [Thu, 2 Jun 2011 20:03:44 +0000 (22:03 +0200)]
Unit test reference counting in GtkTreeModelSort
Kristian Rietveld [Thu, 2 Jun 2011 20:01:45 +0000 (22:01 +0200)]
Avoid unreferencing deleted nodes
Now that we call unref_node in free_level, we have to take care that
free_level may only unref (parent) nodes when these still exist in the
child model. After row-deleted has been received for a node, its
children may no longer unref this node.
Kristian Rietveld [Thu, 2 Jun 2011 19:51:51 +0000 (21:51 +0200)]
Bug 611922 - gtk_tree_model_sort_ref_node() is too slow
Referencing a parent node for each referenced node is overdone. Instead,
we now reference the parent from build_level and unreference in free_level.
Each level keeps a single reference on its immediate parent. This both
alleviates the performence problems and should perfectly serve the purpose.
Kristian Rietveld [Thu, 2 Jun 2011 14:20:08 +0000 (16:20 +0200)]
Move asserts to gtktreemodelrefcount.h for other unit tests to use
Kristian Rietveld [Sat, 28 May 2011 14:48:15 +0000 (16:48 +0200)]
Add generic GtkTreeModel reference counting unit tests
Kristian Rietveld [Sat, 28 May 2011 14:41:49 +0000 (16:41 +0200)]
Add GtkTreeModelRefCount, only to be used in unit tests
Kristian Rietveld [Tue, 24 May 2011 20:19:38 +0000 (22:19 +0200)]
treemodelsort: Remove unnecessary comment
(I am no longer 17 years old and have grown up by now).
Kristian Rietveld [Sun, 22 May 2011 16:40:21 +0000 (18:40 +0200)]
Add some comments to gtk_tree_model_filter_remove_elt_from_level
Kristian Rietveld [Sun, 22 May 2011 16:26:37 +0000 (18:26 +0200)]
Fix a couple of memleaks in the filter model tests
(Not all of them yet, need to do the remainder on Linux since valgrind
on Mac OS X is a bit too noisy).
Kristian Rietveld [Sat, 21 May 2011 09:45:08 +0000 (11:45 +0200)]
Bug 621076 - GtkTreeModelFilter does not emit all signals in some ...
The bulk of the fix is to walk the chain of ancestors, starting at the
root level, and check if the visibility of any of the ancestors has
changed. If yes, the necessary signals are emitted so that this change
is propagated properly. This walk is done after a node has been
inserted, changed or deleted, see function
gtk_tree_model_filter_check_ancestors().
Bug reported, and initial debugging and analysis, by Xavier Claessens.
Kristian Rietveld [Fri, 20 May 2011 18:43:48 +0000 (20:43 +0200)]
Decrease code duplication in _remove_elt_from_level take two
Kristian Rietveld [Fri, 20 May 2011 18:41:50 +0000 (20:41 +0200)]
Decrease amount of code duplication in _remove_elt_from_level
Kristian Rietveld [Fri, 20 May 2011 18:39:12 +0000 (20:39 +0200)]
Rename gtk_tree_model_filter_remove_node for internal consistency
Kristian Rietveld [Fri, 20 May 2011 18:33:30 +0000 (20:33 +0200)]
Change signature of gtk_tree_model_filter_remove_node
Xavier Claessens [Fri, 20 May 2011 18:25:24 +0000 (20:25 +0200)]
Add thorough unit test for bug #621076
Minor edits and additions by Kristian Rietveld.
Kristian Rietveld [Fri, 20 May 2011 18:21:11 +0000 (20:21 +0200)]
Corrections to has-child filter tests
Kristian Rietveld [Fri, 20 May 2011 07:11:49 +0000 (09:11 +0200)]
Improve specific_has_child_filter() test to also verify signals
Kristian Rietveld [Fri, 20 May 2011 06:49:58 +0000 (08:49 +0200)]
Improve specific_root_has_child_filter test to also verify signals
Kristian Rietveld [Sat, 14 May 2011 12:50:07 +0000 (14:50 +0200)]
Have a separate category for tests of gtk_tree_model_filter_row_deleted
Kristian Rietveld [Sat, 14 May 2011 12:47:39 +0000 (14:47 +0200)]
Add two unit tests for gtk_tree_model_filter_row_inserted
Kristian Rietveld [Sat, 14 May 2011 12:45:54 +0000 (14:45 +0200)]
Use g_assert_cmpint instead of g_assert in check_level_length()
Kristian Rietveld [Sat, 14 May 2011 12:42:31 +0000 (14:42 +0200)]
Refactor emitting row-inserted for new nodes to a common code path
Suggested by Xavier Claessens / bug 621076.
Kristian Rietveld [Sat, 14 May 2011 12:10:27 +0000 (14:10 +0200)]
Fix comment
Kristian Rietveld [Sat, 14 May 2011 12:09:51 +0000 (14:09 +0200)]
Factor out find_elt_with_offset
Suggested by Xavier Claessens / bug 621076.
Kristian Rietveld [Sat, 14 May 2011 09:47:01 +0000 (11:47 +0200)]
Refactor to a common code path for inserts of nodes in levels
Suggested by Xavier Claessens / bug 621076.
(Additional obseration: this should speed up the filter model's
handling of row-inserted as a binary search is now used instead
of a linear scan).
Xavier Claessens [Wed, 11 May 2011 20:07:01 +0000 (22:07 +0200)]
Improve error messages of signal monitor
Kristian Rietveld [Mon, 9 May 2011 20:22:24 +0000 (22:22 +0200)]
Factor out another part of gtk_tree_model_filter_row_deleted
Kristian Rietveld [Mon, 9 May 2011 08:36:22 +0000 (10:36 +0200)]
Three more TreeModelFilter remove ancestor tests
Kristian Rietveld [Mon, 9 May 2011 08:29:54 +0000 (10:29 +0200)]
In sort model also emit row-deleted after updating the data structures
Kristian Rietveld [Mon, 9 May 2011 08:29:37 +0000 (10:29 +0200)]
Correct GtkTreeModelFilter to never unref an already deleted child node
Kristian Rietveld [Mon, 9 May 2011 08:19:39 +0000 (10:19 +0200)]
Improve filter model remove node unit tests
Kristian Rietveld [Mon, 9 May 2011 08:04:24 +0000 (10:04 +0200)]
Print failed assertions for failed child iterator conversions